using System;
using System.Runtime.Serialization;

namespace SharedObjects
{
	public class BankTransaction : EntityBase
	{
		public DateTime TransactionTimeStamp { get; set; }
		public long Amount { get; set; }
		public ulong SendingAccountId { get; set; }
		public ulong ReceivingAccountId { get; set; }
		public string Purpose { get; set; }
	}

	/// <summary>
	/// This is a "player facing" transaction object.
	/// </summary>
	[DataContract]
	public class ReadonlyBankTransaction : EntityBase
	{
		[DataMember] public DateTime Date { get; set; }
		[DataMember] public long Amount { get; set; }
		[DataMember] public long TransactionPartnerAccountNumber { get; set; }
		[DataMember] public string TransactionPartnerBankName { get; set; }
		[DataMember] public string Purpose { get; set; }
	}
}